home *** CD-ROM | disk | FTP | other *** search
Text File | 1994-09-08 | 9.8 KB | 2 lines | [TEXT/R*ch] |
- YModem Tool v 1.0 ©Glenn R. Howes 1993 --> shareware version
- --------------------------------------
-
- **************************************
- This is the first release of this tool. Redistribute it as you wish with the
- exception that vendors must obtain a license from me to bundle
- this tool with commercial software.
-
- Please include this read me file with the tool.
- **************************************
-
- version history:
- initial release 1.0
-
- Description:
- This Macintosh Communications Toolbox file transfer tool implements the YModem
- transfer protocol has described by Chuck Forsberg in his paper
- "XMODEM/YMODEM PROTOCOL REFERENCE". YModem is a simple batch sending protocol
- designed for 8-bit connections.
-
- Useage:
- 1) Acquire a CTB capable applications: ClarisWorks, Termy, VersaTerm, etc.
- 2) For System 6 users (6.0.4 and up) install the communications toolbox
- (available from Apple).
- 3) Place this tool in the Extension folder for System 7 or the Communications
- folder for system 6.
- 4) Run your application and select this tool from the appropriate dialog.
- 5) Connect up with a remote computer and run a X,Y or Z program on it.
- (sb and rb on Unix machines). The connection must be transparent to all
- 8 bit characters.
-
- Problems:
- If a transfer won't start, or proceeds for a few thousand bytes and then stops,
- the most likely problem is the connection is not 100% 8 bit clean. There is
- nothing that can be done about this other then trying another connection, or
- using Kermit (or sometimes ZModem). Sometimes, you can receive but not send
- files, depending on the setup.
-
- If YModem-g mode works sporadically, the most likely problem is that the
- receiver is unable to keep up with the data stream and the connection tools
- buffer is overflowing. You need some sort of flow control to solve this, and
- avoid using this option while doing transfers in the background. Better yet,
- don't use this option.
-
- If auto-receive doesn't work, perhaps your application doesn't support it, or
- maybe the trigger selected doesn't match the output of the remote program
- (in which case see "Lovers of ResEdit" below).
-
- If you want the modified time of downloaded non-macbinary files to be right,
- try using the Map control panel to set your current location. (YModem uses
- Greenwich Mean Time to specify this parameter).
-
- If while using Versaterm 4.6.2 or before, you experience a system freeze
- always at the beginning of a transfer, upgrade to 4.6.3 or later. (Or use
- Versaterm's built in YModem :) ).
-
- If the tool cancels on a transfer error, but the remote keeps on sending
- data in -g mode, you can try holding down the control key and hitting the
- "x" key a few times, this might work, but then again, it might not, because
- the tool already tried it. In this case, there isn't much to do but wait for
- the file to be finished or disconnect.
-
- If text files show up a one long line. You are probably having the remote
- send Unix text, while the tool is set for PC Text. If it is one long line
- interspersed by "
- ", you are probably sending Unix text and receiving in
- binary. If the text is double spaced, you are probably sending PC Text and
- receiving Unix text. The safest way is probably to send/receive text in ascii
- mode with a tool setting of "PC Text" (for example by using the Unix commands
- "sb -a filename" and "rb -a").
-
- Options:
- • Use YModem-g, a turbo version of YModem which assumes no transmission errors
- will occur. If errors occur the transfer will automatically fail.
- Try using this method if you wish, but be prepared to abandon it.
- This effects only files being received. To send in -g mode, you have
- to tell the receiving program to use streaming mode (for example,
- in Unix typing "rb -g".
- • Use 1-K blocks, in order to increase the transfer speed send data in
- 1 kilobyte blocks instead of 128 byte blocks. This may be a problem when
- dealing with some XModem implementations. This only effects packets
- sent by this tool. You have to tell the remote computer to send 1K
- packets (for example by typing "sb -k filename").
- • Method popup menu:
- macbinary: send files in macbinary format, this is the only way to
- transmit most mac specific files. In receiving mode, files are
- checked for macbinary format and decoded if they are macbinary.
- binary: send a file's "data" fork untouched. Use for binary data files
- such as compressed archives, or for sending text files to another
- macintosh.
- unix text: on sending, replace all instances of the carriage return
- character with a line feed, on receiving, replace all instance of the
- line feed character with a carriage return. Alternatively, you
- could tell the remote Unix machine to send pc text (usually by using
- the command "sb -a filename".
- pc text: on sending, add a line feed after every carriage return,
- on receiving, remove all line feeds. This is the format that YModems
- expects generic text files to be in (when you type "rb -a" for
- instance).
- • Creator: This 4 character token represents the application that you wish to
- use to open a downloaded document. This will be overridden in valid
- macbinary downloads.
- • Type: This 4 character token represents the format type you believe the
- downloaded document to be in. This will be overridden in valid macbinary
- downloads.
- • Set Document Type…: This button will bring up a standard file dialog asking
- you to select another document of the same type as the document, or an
- application which will be used to open it. This will fill in the
- Creator and Type items.
- • Save Preferences: This button will take the current parameters and store them
- into a preference file (located in the preferences folder of system 7 or the
- system folder of system 6). Then when you switch back to this tool from using
- another or when setting up a new session document, these parameters will
- appear by default
- • Modify Sent Filename: Outgoing file names are converted to a format more
- friendly for unix systems.
- • UseAutoreceive: Some CTB compliant applications allow the file transfer tool
- to specify a string of characters in the data stream to look for; when they
- appear, the application invokes the tool in receive mode.
- • Trigger: This is a menu that describes the string used to trigger autoreceiving.
- I've put in "Macbinary" (which will invoke when <ESC>b is sent, "sz" which
- will invoke when <CAN>B0000 is sent, "and "Start Your..." which will
- activate when "Start your YModem Receive". Of course, if you were reading
- this message on your terminal when the above line was shown, you might
- have gone into receive mode. So be wary.
-
- You can add your own (see "Lovers of Resedit" below.). The Macbinary
- option will also send out a <ESC>b when starting to send.
-
- Notes to Developers:
- • I expect a hard dialog ID in the FSSpec passed to the tool on the ftReceiveMsg.
- If you pass me a notification pointer, I will call it after closing each
- successfully transferred file.
- • If you pass me an array of FSSpecs for a ftSendMsg, I copy it
- right away, so you can dispose of the original if you want.
- • I set the autoreceive string in both the fval and fcsr code (so look) for it,
- if you implement that feature.
-
-
- Lovers of ResEdit:
- You can add your own autoreceive strings by:
- 1) Open the 'Auto' resources and create a new one with the next number
- sequentially from those already there. These are stored as hex
- representations of pascal strings so remember to put in a length
- byte first.
- 2) adding an item to the 'MENU' resource used in the setup box
- 3) If you really like to go the whole nine yards, you can add a balloon help
- string by looking in the 'STR#' resources and adding another one to the
- "trigger strings" resource.
- You can change the keywords used in macros by opening the 'STR#' labled
- macro types and macro values. These keywords must be lowercase and end with
- a space.
- If you don't like the wording of anything in the status window, most of the
- strings used are stored in a 'STR#' resource labled "status strings".
-
- ************
- Don't distribute modified copies.
- ************
-
- Legalisms:
- I, Glenn R. Howes, retain all rights to this tool and to its source code.
- It shall not be bundled with commercial applications capable of
- making use of it, nor sent by a vendor of such an application to a customer
- without a license from me. A licensable version is available
- for commercial vendors.
-
- This tool is the shareware version. If you use it for two weeks feel obliged
- to send me $8 US to the address below.
-
- I give no warranty for this tool. Any loss or damage brought about by its useage
- is not my responsibility. The user takes his chances when using any piece of
- software, including this one.
-
- Complaints/Ideas/Offers/Salutations: (even if you didn't pay a fee)
- Glenn R. Howes
- 1101 University Ave.
- Madison, WI 53706
-
- Internet: howes@bert.chem.wisc.edu
-
- Thanks to:
- • Ed Turner for loaning me "Inside the Macintosh Communication's Toolbox"
- • Chuck Forsberg for inventing YModem and writing "XMODEM/YMODEM PROTOCOL REFERENCE".
- • Stephen Satchell for writing and putting into the public domain the lookup
- cyclic redundancy algorithm used in my packet error checking and macbinary II
- generation routines.
- • Jim Matthews for providing the code for extracting the Finder comments found in
- Macbinary files. Sorry, I haven't incorporated the code to put comments into my
- own Macbinary generation.
- • Brian Hall for his constant stream of suggestions.
- • My beta testers: esp. Bill Lippa, John Rawnsley and Alex Rosenberg.
- • The teachers of the St. Thomas Aquinas elementary school in International Falls, MN;
- nothing like a solid Catholic education to drum the fundamentals into you.
- • Dave Mark and Cartright Reed for writing the "Macintosh C Programming Primer",
- which started me on this journey in the first place.